Currently, more sophisticated software is required. In addition, with the proliferation of embedded devices such as mobile telephones and digital household appliances, software is sometimes required to operate on many different platforms. In order to effectively develop such software, Model Driven Development (MDD) has been studied. According to MDD, software capable of operating on various platforms can be automatically generated on the basis of software specifications written using Unified Modeling Language (UML).
An example of a technique enabling MDD is Rational Rose (R) RT developed by International Business Machines Corporation. A developer creates or corrects software specifications on a generic personal computer using this technique. Software generated on the basis of the created or corrected software specifications is transmitted to an embedded device via a communication line, and is then executed. In addition, in this technique, a debugging environment for comparing software with software specifications is provided. For example, a developer can check on the display screen of a personal computer which part of the software specifications is being executed by an embedded device.
However, in order to conduct such development, an embedded device is required to have communications capability. In order to have communications capability, for example, a communication device capable of performing communication in accordance with Ethernet (registered trademark) and a device driver for controlling the communication device are required. In addition, in some cases, development software requires control software for TCP/IP that is a generic communication protocol. However, some embedded devices do not have TCP/IP communications capability. In this case, a device driver, which will not be employed in an end product, has to be specially developed. This may lead to an increase in development cost and a longer development period.
According to past techniques, TCP/IP-based communication can be converted into another protocol-based communication. Consequently, TCP/IP-based communication can be performed via a communication line such as a serial interface without using Ethernet. If this technique is applied to an embedded device, an Ethernet communication device is not required. However, control software for TCP/IP is still required. This control software may increase the required memory capacity of the embedded device.
According to other past attempts, communication of a first device can be performed by a second device in place of the first device. The first device calls a communication procedure on the second device using Remote Procedure Call (RPC) protocol, whereby this communication is achieved. However, RPC cannot be used when TCP/IP communication is not established. That is, in this technique, control software for TCP/IP is also required. This control software may increase the required memory capacity of the embedded device. In addition, if the condition of a communication line is poor, communication may be stopped and may not be restored.